//  导入函数、常量相关
import { debounce } from "./debounce.js"; // 防抖函数
import { BACKTOP_DISTANCE } from "@/common/const";

// 导入组件相关
import BackTop from "@/components/content/backTop/BackTop"; // 回到顶部

// 导出mixin对象相关
// refresh函数
export const mixinRefresh = {
  data() {
    return {
      newRefresh: null  // 新refresh刷新函数
    };
  },
  mounted() {
    this.newRefresh = debounce(this.$refs.scroll.refresh, 100)
  }
}

// scroll去顶部
export const mixinGoTop = {
  data() {
    return {
      showBackTop: false
    }
  },
  methods: {
    backTop() {
      this.$refs.scroll.scrollTo(0, 0, 300); // 拿到scroll组件对象中的scrollTo方法并执行
    },
    listenShowBackTop(position) {   // scroll滚动事件
      this.showBackTop = position.y < -BACKTOP_DISTANCE; // 决定backTop是否显示
    }
  },
  components: {
    BackTop
  }
}


